Hybrid ARQ schemes with soft combining in variable rate packet data applications

ABSTRACT

A system and method for transmitting high speed data on fixed rate and for variable rate channels. The system and method provides the flexibility of adjusting the data rate, the coding rate, and the nature of individual retransmissions. Further, the system and method supports partial soft combining of retransmitted data with previously transmitted data, supports parity bit selection for successive retransmissions, and supports various combinations of data rate variations, coding rate variations, and partial data transmissions.

CROSS-REFERENCE TO RELATED APPLICATION

The present application is a continuation of U.S. Utility applicationSer. No. 12/344,933, filed Dec. 29, 2008 now U.S. Pat. No. 8,254,284,which is a continuation of U.S. Utility application Ser. No. 11/435,455,filed May 16, 2006, now issued as U.S. Pat. No. 7,483,389, which is acontinuation of U.S. Utility application Ser. No. 09/764,660, filed Jan.18, 2001, now issued as U.S. Pat. No. 7,072,307, which claims prioritypursuant to 35 U.S.C. Sec 119(e) to U.S. Provisional Application Ser.No. 60/177,055, filed Jan. 20, 2000, all of which are herby incorporatedby reference in their entirety.

BACKGROUND

1. Technical Field

The present invention relates generally to cellular wirelesscommunication networks; and more particularly to a method of reliablytransmitting high speed data within such a cellular wirelesscommunication network.

2. Related Art

Wireless networks are well known. Cellular wireless networks supportwireless communication services in many populated areas of the world.Satellite wireless networks are known to support wireless communicationservices across most surface areas of the Earth. While wireless networkswere initially constructed to service voice communications, they are nowcalled upon to support data communications as well.

The demand for data communication services has exploded with theacceptance and widespread use of the Internet. While data services havehistorically been serviced via wired connections, wireless users are nowdemanding that their wireless units also support data communications.Many wireless subscribers now expect to be able to “surf” the Internet,access their email, and perform other data communication activitiesusing their cellular phones, wireless personal data assistants,wirelessly linked notebook computers, and/or other wireless devices. Thedemand for wireless network data communications will only increase withtime. Thus wireless networks are currently being created/modified toservice these burgeoning data service demands.

Significant performance issues exist when using a wireless network toservice data communications. Wireless networks were initially designedto service the well-defined requirements of voice communications.Generally speaking, voice communications require a sustained bandwidthwith minimum signal-to-noise ratio (SNR) and continuity requirements.Data communications, on the other hand, have very different performancerequirements. Data communications are typically bursty, discontinuous,and may require a relatively high bandwidth during their activeportions. To understand the difficulties in servicing datacommunications within a wireless network, consider the structure andoperation of a cellular wireless network.

Cellular wireless networks include a “network infrastructure” thatwirelessly communicates with user terminals within a respective servicecoverage area. The network infrastructure typically includes a pluralityof base stations dispersed throughout the service coverage area, each ofwhich supports wireless communications within a respective cell (or setof sectors). The base stations couple to base station controllers(BSCs), with each BSC serving a plurality of base stations. Each BSCcouples to a mobile switching center (MSC). Each BSC also typicallydirectly or indirectly couples to the Internet.

In operation, each base station communicates with a plurality of userterminals operating in its cell/sectors. A BSC coupled to the basestation routes voice communications between the MSC and the serving basestation. The MSC routes the voice communication to another MSC or to thePSTN. BSCs route data communications between a servicing base stationand a packet data network that may include or couple to the Internet.

The wireless link between the base station and the MS is defined by oneof a plurality of operating standards, e.g., AMPS, TDMA, CDMA, GSM, etc.These operating standards, as well as new 3G and 4G operating standardsdefine the manner in which the wireless link may be allocated, setup,serviced and torn down. These operating standards must set forthoperations that will be satisfactory in servicing both voice and datacommunications.

Transmissions from base stations to user terminals are referred to as“forward link” transmissions while transmissions from user terminals tobase stations are referred to as “reverse link” transmissions. Generallyspeaking, the volume of data transmitted on the forward link exceeds thevolume of data transmitted on the reverse link. Such is the case becausedata users typically issue commands to request data from data sources,e.g., web servers, and the web servers provide the data to the userterminals.

The transmissions of high speed packet data (HSD) from base stations touser terminals, and vice versa, suffer from errors for many reasons.Errors may be particularly acute in applications with low bit energy tonoise power spectral density ratio (Eb/No). In these situations, aconventional Forward Error Correction (FEC) (e.g., convolutional coding)alone often does not meet the maximum bit error rate (BER) required forthe operation. In such a case, combining the FEC scheme in conjunctionwith a data retransmission scheme such as Automatic Repeat ReQuest (ARQ)is often employed to enhance performance. This combination of FEC andARQ is generally known as Hybrid ARQ.

Generally speaking, there are three classes of hybrid ARQ techniques.Type 1 Hybrid ARQ schemes include data and parity bits for both errordetection and correction in every transmitted packet. If anuncorrectable error is detected at the receiver, the received packet isrejected and a retransmission is requested. The transmitter sends theoriginal packet again at the same data rate. A disadvantage of thisscheme is that the decoder discards uncorrectable packets even if theymight contain some useful information.

In a Type II Hybrid ARQ scheme, the concept of code puncturing is used.A first transmitted packet contains the data and some of the parity bitsfor decoding. If this transmission fails to be received correctly, thedata is stored and a retransmission is requested.

The transmitter then sends the supplemental bits, which were previouslydeleted by puncturing. The receiver then combines the stored data withthe received bits to produce a lower rate decoding. If the combineddecoding fails, the process is repeated, until the decoding rate isreduced to that of the mother code. The Type II Hybrid ARQ scheme isthus more efficient that the Type I Hybrid ARQ scheme because it usesall received data.

A significant drawback of the Type II Hybrid ARQ scheme is that each ofthe retransmitted packets does not independently contain enoughinformation to decode the data. If the initially transmitted data packetsuffers from header errors, for example, the retransmissions of paritybits will be useless and the data cannot be recovered. A number ofspecial cases of Type II Hybrid ARQ schemes exist. Type II Hybrid ARQschemes are also referred to as incremental redundancy schemes.

In a Type III Hybrid ARQ scheme, a starting code rate is chosen to matchthe channel noise conditions, and complementary transmissions arecombined prior to decoding. While the decoder need not rely onpreviously received sequences for decoding, these sequences can be usedto improve the performance of the code. Complementary convolutionalcodes have been proposed as FEC codes for this scheme.

Another technique developed to address such deficiencies intransmissions includes the more recently developed turbo code method.Turbo coding for FEC has proven to be very powerful for correction ofcorrupted data communicated across noisy channels. One form of turbocoding is concatenated convolutional coding (PCCC). Turbo codingprocesses a block of data bits using a transmitting turbo encoder thatencodes the block of data and a receiving turbo decoder that decodes theencoded block. For data transmissions (and voice transmissions), thedata stream is divided into blocks, or data packets, of N data bits, andturbo coding processes these individual data packets. The original databits are provided as inputs to the turbo encoder. The turbo encodergenerally includes two convolution recursive encoders, which togetherprovide an output (codeword) including both systematic data bits (fromthe original data bits provided) and additional parity bits.

The first encoder operates on the input systematic data bits and outputscode bits including both the systematic data bits and parity bits. Theturbo encoder also includes an interleaver, which interleaves thesystematic data bits before feeding the data bits into the secondencoder. The second encoder operates on the interleaved data bits andoutputs code bits including parity bits. The output of the first andsecond encoder are concurrently processed and transmitted to thereceiver decoder in transmission blocks, which then decodes thetransmission block to generate decoded data bits.

Each of these Hybrid ARQ schemes has its benefits and its shortcomings.Thus, there exists a need for an improved Hybrid ARQ scheme thatovercomes these shortcomings. Further, there exists a need for animproved Hybrid ARQ scheme that may be efficiently used with Turbocoding operations.

SUMMARY OF THE INVENTION

In order to overcome the above-described shortcomings of prioroperations, a system and method constructed according to the presentinvention employs an adaptive rate transmission procedure for high speeddata applications to maximize the total data throughput. The system andmethod of the present invention further provide a procedure fortransmitting data, which minimizes retransmission and efficiently usesthe air interface. Moreover, the system and method of the presentinvention provides a transmission procedure with the flexibility tocombine later retransmissions of data with earlier retransmissions ofthe original transmission to increase the signal to noise ratio andincrease overall transmission efficiency. Moreover, the system andmethod of the present invention also provides a transmission procedurewith particular advantages for applications where at any given instantthe transmission channel is not shared, but dedicated to a particularuser.

According to one embodiment of the present invention, a data packet istransmitted on a variable rate channel from a transmitter to a receiver.This operation includes transmitting a first transmission block portionand a second transmission block portion in a first transmission block ata first data transmission rate. Upon receipt, the receiver decodes thefirst transmission block in a first decoding. If the first decoding isnot successful, the transmitter transmits, in a second transmission, thefirst transmission block portion at a second transmission rate differentfrom the first transmission rate. The first transmission block and thesecond transmission block arc then soft combined and decoded. If thisdecoding is not successful, the second transmission block portion istransmitted at a second transmission rate different from the firsttransmission rate. All transmission blocks are then soft combined anddecoded. These operations may be extended to additional transmissions atdiffering transmission rates, soft combining of all receivedtransmission blocks, and decoding.

According to another embodiment of the present invention, a firsttransmission includes data bits and first parity bits that may betransmitted on a variable rate channel. The first transmission isdecoded in a first decoding at a first decoding rate. If the firstdecoding is not successful, a second transmission is made that includesthe data bits and second parity bits, where the second parity bits aredifferent from the first parity bits. The first and second transmissionsare then soft combined to form a first combined transmission that isthen decoded in a second decoding at a second decoding rate. If thesecond decoding is not successful, operation according to thisembodiment may be extended to retransmit data bits and other paritybits. All received data and parity bits are then combined and decodingis attempted at a decoding rate commensurate to the number of paritybits included.

According to yet another embodiment of the present invention, a firsttransmission that includes a set of data bits is transmitted on avariable rate channel. The first transmission is then decoded in a firstdecoding at a first decoding rate. If the first decoding was notsuccessful, a second transmission is made that includes the set of databits at a second coding rate less than the first data transmission rate.The first transmission and the second transmission are then softcombined to form a first combined transmission that is decoded in asecond decoding at a second decoding rate. If the second decoding is notsuccessful, an additional transmission at another coding rate is thenmade and decoding is performed at an appropriate decoding rate. If thedecoding is not successful, soft combining is then performed for allreceived transmissions and decoding of the combined transmissions isthen performed at an appropriate decoding rate. These operations may berepeated until successful decoding occurs.

A further embodiment of the present invention generalizes the methodsproposed above to deliver adaptive coding through employing both thevariable data rate option mentioned in the first embodiment above andthe variable coding rate option mentioned in the subsequent embodimentsto generate an arbitrary rate code. An extension of this embodimentyields significant efficiency in that an increased transmission datarate due to improved channel conditions will allow a variety of options,e.g., introduction of further redundancy by repetition, or multiplexingof the retransmission data with new data to the user(s).

In the embodiments presented, partial or full soft combining may beperformed at the receiver, depending on whether some of the data bitswere retransmitted or all of the data bits were retransmitted due to thevariable rate channel.

In one operation according to the present invention, a base stationserves as the transmitter while a user terminal serves as the receiver.In another operation according to the present invention, the userterminal serves as the transmitter while the base station serves as thereceiver. Thus, the present invention may be implemented on both forwardlink and reverse link operations. The description provided herein shouldbe viewed from each of these perspectives.

Other aspects and features of the present invention will become apparentto those ordinarily skilled in the art upon review of the followingdescription of specific embodiments of the invention in conjunction withthe accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a system diagram illustrating a portion of a cellular wirelessnetwork constructed according to the present invention.

FIG. 2 is a graph illustrating the BER as a function of Eb/No fordifferent data transmission rates.

FIG. 3 illustrates data transmission rates of transmission andretransmissions of a data packet according to the first embodiment ofthe present invention.

FIG. 4 is a flow diagram illustrating operation according to the firstembodiment of the present invention.

FIG. 5 illustrates transmissions and retransmissions of a data packetaccording to a second embodiment of the present invention.

FIG. 6 is a flow diagram illustrating operation according to the secondembodiment of the present invention.

FIG. 7 is a schematic diagram illustrating a turbo encoder for use withthe second and third embodiments of the present invention.

FIG. 8 is a puncturing table, which illustrates an exemplary puncturingprocedure for use with the second embodiment of the present invention.

FIG. 9 illustrates transmissions and retransmission of a data packetaccording to a third embodiment of the present invention.

FIG. 10 is a flow diagram further illustrating operation according tothe third embodiment of the present invention.

FIG. 11 is a puncturing table that illustrates an exemplary puncturingprocedure for use with the third embodiment of the present invention.

FIG. 12 is a block diagram illustrating a base station constructedaccording to the present invention.

FIG. 13 is a block diagram illustrating a user terminal constructedaccording to the present invention.

DETAILED DESCRIPTION OF THE DRAWINGS

FIG. 1 is a system diagram illustrating a portion of a cellular system100 that operates according to the present invention. The cellularsystem 100 infrastructure shown includes a base station 102 and anetwork infrastructure 104. These components are generally known andwill be described only as they relate to the teachings of the presentinvention. The cellular system 100 may operate according to any variousindustry standard protocol (or proprietary protocol) that has beenmodified in accordance with the teachings of the present invention,e.g., various CDMA standards such as the IS-95B, IS-2000, 3GPP, W-CDMA,and other CDMA standards and various TDMA standards, e.g., IS-136, etc.,among others.

The base station 102 provides wireless service within a correspondinggeographic area (e.g., cell or sector(s)) and services a plurality ofuser terminals 106-122. Some of the user terminals (e.g., voiceterminals 118, 120 and 122) service voice communications. Alternatively,other of the user terminals (e.g., desktop computer 106, laptop computer108, wearable computer 110, data terminal 112, vending machine 114 andcredit card terminal 116) service data communications. In servicing datacommunications, the base station 102 transmits packet data on theforward link to the user terminals 106-122. Further, the user terminals106-122 transmit packet data to the base station 102 on the reverselink.

Operation according to the present invention provides efficienttransmission of data bits using a procedure for adapting the datatransmission rate or coding of data upon a transmission failure andthereby increasing the efficiency of packet data transmission.Typically, operation according to the present invention will beimplemented upon the forward link. However, the principles of thepresent invention could be applied to reverse link transmissions aswell. The present invention increases the efficiency of conventionalpacket data re-transmission by two possible approaches. First, theinitial transmission packet (which is corrupted) is not discarded, butinstead is combined together with the re-transmitted packet to furtherimprove the signal to noise ratio. Second, the re-transmitted packet maybe transmitted at a decreased coding rate to improve redundancy and thuserror correction capability. In general these two approaches may becombined.

The present invention may be implemented, for example, according tothree types of Automatic Repeat Request (ARQ) schemes. In the firstscheme, the packet data transmission rate is reduced for eachre-transmission, and the retransmitted packet is combined with part ofthe earlier transmitted packet. In the second scheme, the packet datarate is kept constant, and the retransmitted data packets are combinedwith earlier transmissions to reduce the rate of the resultant code. Inthe third scheme, the coding rate is incrementally decreased incombination with soft combining of self-decodable retransmissions. Ofcourse, the present invention contemplates that the three schemes can becombined in different ways.

FIG. 2 illustrates by way of example, the bit error rate (BER) of a datatransmission as a function of the bit energy to noise power spectraldensity ratio (Eb/No) for various data transmission rates of a turbocoded transmission. In FIG. 2, the coding rate is fixed for differentdata transmission rates. As the data transmission rate increases, theEb/No required to achieve a given BER becomes much larger. Therefore ifa transmission fails due to a poor carrier interference ratio (C/I), aretransmission at a lower transmission rate will decrease the BER andincrease the probability of a successful retransmission. For example,halving the transmission rate will double the signal to noise ratio, andthus improve the BER.

According to the present invention, the bits of a plurality oftransmissions are combined. Retaining the bits of a transmission blockof a first transmission and combining the transmission block of a firsttransmission with a transmission block of a retransmission also improvesthe signal to noise ratio of the combined result. In this fashion, bycombining the bits of the first transmission and the bits of theretransmission, a weighted average of the soft estimates of therespective bits of the transmission blocks of the first transmission andthe retransmission generates a combined transmission block. Decoding thecombined transmission block yields a lower BER than decoding theindividual transmission blocks. Particular embodiments of the presentinvention are described below.

FIG. 3 illustrates data transmission rates of transmission andretransmissions of a data packet according to the first embodiment ofthe present invention. According to the first embodiment, the datatransmission rate is simply decreased for subsequent retransmissions ofdata and optionally a portion of the transmission block of the initialdata packet is combined with that transmission block portion in latertransmitted data packets. When turbo coding is employed, different Eb/Noratios are required to meet a certain BER for differing data rates. Ingeneral as noted in FIG. 3, the Eb/No required to achieve a certain BERwill decrease with reduced rate retransmission.

In the first embodiment, the first transmission includes a firsttransmission block portion A⁰, and also a second transmission blockportion B⁰, transmitted in a single transmission slot. The first andsecond transmission block portions together comprise the transmissionblock. In general, the transmission block may also include parity bitsin addition to data bits. If the transmission fails, the data isretransmitted in a second transmission (first retransmission) at a rateof one-half the first transmission rate. Of course, the rate of firstretransmission may also be other than one-half the first transmissionrate, but should be less than the first transmission rate to decreasethe BER and thus the probability of a successful retransmission.

As illustrated in FIG. 3, the second transmission could be transmittedover two transmission slots, with the first transmission block portiontransmitted in the first transmission slot, and the second transmissionblock portion in a second slot. Thus, the second transmission comprisesa first part, that is the first transmission block portion, and a secondpart, that is second transmission block portion. However, while thetransmission of first transmission block portion A¹ and the secondtransmission block portion B¹ are shown to reside in adjacent slots,such would typically not be the case and these transmissions would be innon-adjacent slots.

The first transmissions and the second transmissions are combined usingsoft combining Soft combining may be accomplished in any of a variety ofways, some of which are known in the art. According to one softcombining technique, a quantified representation of one analog waveformis combined with another quantified representation of another analogwaveform. Such soft combining must consider, however, the data rates ofeach of the analog waveforms and must compensate for any differences.Other soft combining techniques could also be employed with the otherteachings of the present invention.

This embodiment introduces the notion of partial soft combining, where,based on the channel conditions, the full set of data or a partial setof data is retransmitted and combined before requesting the next portionof the second transmission. Partial soft combining introduces importantbenefits by, in some cases, enabling successful decoding without therequirement of full retransmission of data.

If the second transmission fails, the data transmission rate is againhalved in a third transmission (second retransmission), and the firsttransmission block portion is transmitted over two transmission slots,while the second transmission block portion is also transmitted over twotransmission slots as shown in FIG. 3. A first part of the thirdtransmission extends over two slots and includes the first transmissionblock portion, while a second part of the third transmission alsoextends over two slots and includes the second transmission blockportion. However, while the transmission of first transmission blockportion A² and the second transmission block portion B² are shown toreside in adjacent slots, such would typically not be the case and thistransmission would be in non-adjacent slots.

FIG. 4 is a flow diagram illustrating operation according to the firstembodiment of the present invention. The first transmission includes afirst transmission block portion A⁰ and a second transmission blockportion B⁰ which are transmitted from a transmitter to a receiver at afirst data transmission rate. Generally, the transmission block portionswill include, in addition to data bits, parity bits to increaseredundancy and thus decoder error correction capability. In this regard,it is preferred that the data be first encoded before transmission, andthen decoded after transmission, for example, through turbocoding/decoding.

For example, if turbo coding is employed, a data block comprising databits for the first transmission block portion and the secondtransmission block portion is input into a turbo encoder. The output ofthe turbo encoder will generally include both the input data bits andparity bits. The output of the turbo encoder is then transmitted to areceiver including a turbo decoder as the transmission block. The outputof the turbo encoder may be punctured prior to transmission to thereceiver and turbo decoder. When the output of the turbo encoder ispunctured, selected parity bits are not transmitted, and thus thetransmission block will not include the punctured parity bits.

After the first transmission is received by the receiver (step 402), adecoder (a turbo decoder if turbo coding is used) will decode the firsttransmission block including A⁰ and B⁰ to provide decoded data bits in afirst decoding. The receiver then determines if the first decoding wassuccessful, i.e., whether the data block was successfully transmitted(step 404). If the first decoding was successful, no furthertransmission of the transmission block is necessary and operation forthe transmission of the data block ends. However, if this first decodingwas not successful, the receiver requests that the transmitter send thedata again in a second transmission (first retransmission). The firsttransmission block is stored in the receiver when the first decodingfails (step 406).

The transmitter, upon receiving the request to resend the data, sendsthe first transmission block portion in the second transmission as A¹(also at step 406). The data transmission rate of this secondtransmission is less than the data transmission rate of the firsttransmission and may be one half the rate of the first transmission.

The first transmission block portion of the first transmission, A⁰, andthe second transmission, A¹, are then soft combined to generate a firstcombination of the first transmission block portion A⁰+A¹ (step 408).Soft combining is preferably used to combine A⁰+A¹. Specifically, thereceiver upon receiving a transmission of the transmission block orportion of a transmission block will generate a soft estimate for eachof the bits of the transmission block or portion. In combining A⁰ andA¹, the soft estimates of the respective bits of A⁰ and A¹ are added ina weighted sum, and thus the first combination of the first transmissionblock portion is generated. The first combination of the firsttransmission block portion is concatenated with the second transmissionblock portion from the first transmission, and the resultant is decodedin a second decoding (also at step 408).

The receiver then determines if the second decoding was successful (step410). If the second decoding was successful, no further transmission isnecessary. However, if the second decoding was not successful, thereceiver requests that the transmitter send the second transmissionblock portion in the second part of the second transmission. The secondtransmission of the first transmission block portion A¹ is stored in thereceiver when the second decoding fails (step 412).

The transmitter, upon receiving the request to resend the data, nowsends the second transmission block portion in the second part of thesecond transmission as B¹ (also at step 412). The data transmission rateof this second part of the second transmission is less than the datatransmission rate of the first transmission and may be one half the rateof that transmission. B⁰ and B¹ arc soft combined, to form a firstcombination of the second transmission block portion, B⁰+B¹. Thecombination, A⁰+A¹, is then concatenated with the combination B⁰+B¹ andthe resultant is decoded in a third decoding (step 414).

The receiver then determines if the third decoding was successful (step416). If the third decoding was successful, no further transmission ofthe data packet is necessary. However, if the third decoding was notsuccessful, the receiver requests that the transmitter send data againin a third transmission (second retransmission). The second transmissionblock portion in the second part of the second transmission, B¹, isstored in the receiver when the third decoding fails (step 418).

The transmitter, upon receiving the request to resend the data, nowsends the first transmission block portion in the third transmission asA² (also at step 418). The data transmission rate of this thirdtransmission is less than the data transmission rate of the secondtransmission and may be one half the rate of the second transmission.The first transmission block portions, A⁰, A¹, and A², of thetransmissions are then soft combined to form a combination A⁰+A¹+A². Thecombination A⁰+A¹+A² is concatenated with the combination B⁰+B¹ and theresultant decoded in a fourth decoding (step 420).

The receiver then determines if the fourth decoding was successful (step422). If the fourth decoding was successful, no further transmission ofthe data packet is necessary. However, if the fourth decoding was notsuccessful, the receiver may request that the transmitter send dataagain, and the method continues at decreasing data transmission rates,until the maximum number of allowed retransmissions is exceeded or thelowest data rate is reached (step 424). Once a successful decode hasbeen obtained, or a determination to cease attempting successful receiptis made, operation ends.

This first embodiment is distinguishable from the conventional Type IHybrid ARQ in that this embodiment is particularly applicable tovariable rate channels, where the data rate is changed duringretransmission (e.g., by changing the spreading factor). In such achannel, only a partial retransmission of the data is attempted if theretransmission data rate decreases with respect to the firsttransmission data rate, and may be adequate to recover the data.Alternately, if the channel improves from the first transmission to thefirst retransmission, further redundancy may be added to the codethrough repetition, or an additional data packet may be transmitted. Afurther difference is that soft combining of the partial transmitteddata is utilized for decoding.

FIG. 5 illustrates transmission and retransmissions of a data packetaccording to a second embodiment of the present invention. In the secondembodiment, the data transmission and retransmission data rates remainfixed, and only the decoding rate of the combined transmission andretransmission changes. This may be accomplished, for example, bysuccessively transmitting transmission blocks with alternate paritybits. In general, the coding rate of a transmission is the number ofdata bits transmitted divided by the total number of bits transmitted,where the total number of bits includes both data bits and parity bits.

In FIG. 5, the transmission block includes both data bits and paritybits, where S and P₁-P₄ represents data bits, and parity bits,respectively. An encoder, preferably a turbo encoder, generates the databits and parity bits. The data bits S are the data bits in thetransmission block to be transmitted. In the example of FIG. 5, for eachdata bit from the block of data to be transmitted there will becorresponding parity bits selected from the parity bits P₁-P₄.

The output of the turbo encoder, including both data bits S, and paritybits P₁-P₄ is then punctured, i.e., selected bits of the parity bits arenot sent in the transmission. For the first transmission, for example asillustrated in FIG. 5, only parity bits P₁ and P₂ are transmitted withthe data bits S. Thus all of the parity bits P₃ and P₄ are punctured inthe first transmission. Of course, in other operations, some of theparity bits P₁ and P₂ may also be punctured, but some of these paritybits are also transmitted in this first transmission.

For example, in FIG. 5, the first transmission may be at a coding rateof one half. In this case, half of the parity bits P₁ and P₂ arepunctured so that the number of data bits S transmitted is equal to thenumber of parity bits P₁ and P₂ transmitted. If the first transmissionfails, the data is retransmitted in a retransmission (secondtransmission). However, in the second transmission, parity bits P₁ andP₂ are punctured so that only parity bits P₃ and P₄ are sent in thesecond transmission. Thus, in the second transmission, the parity bitstransmitted include parity bits other than those sent in the firsttransmission. The transmission blocks of the first and secondtransmission are then soft combined to generate a resultant combination.

This resultant combination now includes all four parity bits, P₁-P₄, butsince the resultant combination includes the same number of data bits,it has a lower rate code than the code of the individual transmissions.Because the redundancy introduced by the additional parity bits is whatyields a code error correction capability, the lower code rate increasesthe error correction capability and thus increases the probability thata decoding of the resultant combination will be successful.

If the second transmission also fails, the data is again retransmittedin a third transmission (second retransmission). In the thirdtransmission, the parity bits P₁′ and P₂′ are included. The parity bitsP₁′ and P₂′ correspond to the parity bits P₁ and P₂, where the primeindicates a retransmission. Thus, the parity bits transmitted in thethird transmission are the same as those of the first transmission. Ifthe decoding after the third transmission fails, the data is againtransmitted in a fourth transmission (third retransmission).

In the fourth transmission the parity bits P₃′ and P₄′ are included. Theparity bits P₃′ and P₄′ correspond to the parity bits P₃ and P₄, wherethe prime indicates a retransmission. If the decoding after the fourthtransmission fails, the process of retransmission continues.

FIG. 6 is a flow diagram illustrating in further detail operationaccording to the second embodiment of the present invention. The exampleillustrated in FIG. 6 uses, for example, 8-state PCCC (parallelconcatenated convolutional coding) turbo code. Prior to the firsttransmission, data bits S are input into a turbo encoder, the turboencoder encodes the set of data bits S and generates an output includingthe data bits S and parity bits P₁-P₄. The encoder output is thenpunctured to remove selected parity bits. Specifically, as shown in FIG.6, all the parity bits P₃ and P₄ are punctured. Further, some of theparity bits P₁ and P₂ are also punctured. Since the coding rate of thefirst transmission is one half, half of the parity bits P₁ and P₂ arepunctured so that there are an equal number of parity bits and databits. Of course if an initial coding different than one half is desired,a different fraction of parity bits may be appropriately punctured.

After puncturing the output from the turbo encoder, the transmittertransmits the punctured output in a first transmission as a transmissionblock (step 602). The receiver than decodes the first transmissionproviding a first set of decoded data bits in a first decoding at afirst decoding rate. The receiver than determines if the first decoding,and thus the first transmission was successful (step 604). If the firstdecoding was successful no further transmission of the data packet isnecessary. However, if the first decoding is not successful, the firsttransmission, including data bits and parity bits is stored, and thereceiver requests that the transmitter retransmit the data in a secondtransmission (first retransmission, at step 606).

The transmitter upon receiving the request to retransmit the data,transmits the set of data bits S in the second transmission. Alsoincluded in this second transmission are parity bits P₃ and P₄. In thissecond transmission, all of the parity bits P₁ and P₂ arc punctured,while none of the parity bits P₃ and P₄ are punctured. Thus, the firstand second transmissions are the same except that the parity bits P₃ andP₄ are transmitted instead of the parity bits P₁ and P₂. The secondtransmission is then combined with the first transmission to provide afirst combined transmission (also at step 606). The first and secondtransmissions are combined by a soft combining method. The softcombining reduces the signal to noise of the combination relative to theindividual transmissions.

The resultant first combined transmission of this first combining willhave the same number of data bits, but an increased number of paritybits. Thus, the redundancy of the first combined transmission is greaterthan that of either the first or second transmission. The first combinedtransmission is then decoded (also at step 606). Because of theincreased redundancy of the combined transmission, the rate of thecombined code is beneficially greater. The receiver then determines ifthe decoding is successful (step 608). If successful, no furtherretransmissions are necessary.

Optionally, the second transmission may be decoded prior to combiningthe first and second transmissions, and the success of this decoding isthen determined. This is possible because the second transmission (andfurther retransmissions) are self decodable and thus need not becombined with other transmissions to be decoded.

However if the decodings are not successful, the second transmission,including data bits and parity bits is stored, and the receiver requeststhat the transmitter retransmit the data in a third transmission (secondretransmission, at step 610). The transmitter upon receiving the requestto retransmit the data transmits the set of data bits S in the thirdtransmission (also at step 610). Also included in this thirdtransmission are parity bits P₁′ and P₂′. The parity bits P₁′ and P₂′correspond to the parity bits P₁ and P₂, where the prime indicates aretransmission. The coding rates for the first and third transmissionsmay be the same. The third transmission is then combined with the firsttransmission to provide a second combined transmission (also at step610).

The first and third transmissions are combined, preferably, by a softcombining method. Because parity bits P₁′ and P₂′ correspond to theparity bits P₁ and P₂, respectively, the second combined transmissionwill have the same number of parity bits as for the individual first andthird transmissions. Thus, the redundancy of the second combinedtransmission will be less than for the first combined transmission,which included all four parity bits P₁-P₄. However, the signal to noiseof the resultant combination will still be decreased relative to theindividual transmissions. Additionally, the stored parity bits P₃ and P₄can also be soft combined to improve performance.

The combined first and third transmissions are then decoded, and thereceiver determines if the decoding is successful (step 612).Optionally, the third transmission may be decoded prior to combining thefirst and third transmissions, and the success of this decoding is thendetermined. If the decodings are not successful, the third transmission,including data bits and parity bits is stored, and the receiver requeststhat the transmitter retransmit the data in a fourth transmission (thirdretransmission at step 614).

The transmitter upon receiving the request to retransmit the datatransmits the set of data bits S in the fourth transmission. Alsoincluded in this fourth transmission are parity bits P₃′ and P₄′. Thus,all of the parity bits P₁ and P₂ are punctured. The coding rates for thefourth and second transmissions may be the same. The fourth transmissionis then combined with the second transmission to provide a thirdcombined transmission (also at step 614). The second and fourthtransmissions are combined, preferably, by a soft combining method.Because parity bits P₃′ and P₄′ correspond to the parity bits P₃ and P₄,respectively, the third combined transmission will have the same numberof parity bits as for the individual second and fourth transmissions.Thus, the redundancy of the third combined transmission will be lessthan for the first combined transmission, which included all four paritybits P₁-P₄. However, the signal to noise of the resultant combinationwill still be decreased relative to the individual transmissions.

The combined second and fourth transmissions are then decoded, and thereceiver determines if the decoding is successful (step 616).Optionally, the fourth transmission may be decoded prior to combiningthe second and fourth transmissions, and the success of this decoding isthen determined. If the decoding is successful, no furtherretransmissions are necessary. However, if the decodings are notsuccessful, the first, second, third and fourth transmissions are allcombined, preferably, by a soft combining method to generate a fourthcombined transmission (also at step 618). The resultant fourth combinedtransmission will have the same number of information bits, but anincreased number of parity bits relative to the individualtransmissions. Thus, the redundancy of the fourth combined transmissionis greater than that of any of the individual transmissions.

The fourth combined transmission is then decoded. Because of theincreased redundancy of the combined transmission, the rate of thecombined code is beneficially greater. Moreover, the signal to noise isalso further reduced due to the combining of the same parity bits anddata bits in the different transmissions. The receiver then determinesif the decoding is successful (step 620). If successful, no furtherretransmissions are necessary. Otherwise, the retransmission process maycontinue (step 622). Upon a successful decoding process, or when no moreattempts are made, operation ends.

FIG. 7 is a schematic showing a turbo encoder according to this secondembodiment of this invention. Specifically, FIG. 7 shows a first encoder702 to which a data block (INPUT) is provided and the output is databits X and parity bits Y₀ and Y₁. The turbo encoder of FIG. 7 alsoincludes a second encoder 704 shown below the first encoder, the databits of the data block arc interleaved in an interleaver 706 prior tobeing input into the second encoder. The interleaver 706 interleaves, orpermutes, the data bits input according a permutation algorithm as isknown in the art. The second encoder 704 outputs the parity bits Y₀′ andY₁′.

The encoders 702 and 704 each include a plurality of binary adders 708.Each binary adder 708 adds the bits input into the binary adder 708 andoutputs the result of the addition. The encoders 702 and 704 of FIG. 7also include a plurality of one bit delay lines 710.

FIG. 8 is a puncturing table that illustrates an exemplary puncturingprocedure for use with the second embodiment of this invention. In thetable, X refers to the data bits output from the turbo encoder of FIG.7, while Y₀, Y₁, Y₀′, and Y₁′ refer to parity bit output of thatencoder. The successive binary numbers listed in the table represent thepuncturing for successive bits output from the encoder, where 1indicates no puncturing and 0 indicates puncturing. For example, thesuccessive binary numbers 1, 1 in the row labeled X indicate nopuncturing for two successive data bits output from the encoder.

As can be seen from the table of FIG. 8, the data bits are notpunctured. In other words, all of the data bits that are output from theencoder are transmitted in each of the transmissions. However, as canalso be seen, many of the parity bits are punctured. For example, in thefirst transmission, the 1, 0 for the parity bit Y₀ indicates that everyother (the odd numbered ones) Y₀ parity bit output is punctured, whilethe 0, 0 for the Y₁ parity bits indicates that all the Y₁ parity bitsare punctured for the first transmission. The 0, 1 for the parity bitsY₀′ indicates that every other (the even numbered ones) Y₀′ parity bitis punctured.

Further, the puncture table of FIG. 8 also illustrates the coding ratefor the first transmission and the subsequent retransmission. Forexample, for the first transmission for every two unpunctured data bits,the number of unpunctured parity bits is also two, and the coding ratewill be one half. As can be seen the coding rate of the individualtransmissions remains the same at a rate of one half. Of course theinvention is not limited to transmissions at a coding rate of one halfand may have other coding rates.

Although the coding rate of the individual transmissions in FIG. 8remain the same, the rate of the code of the combination of successivetransmissions is less, and thus the redundancy is increased for thecombination of successive transmissions. Specifically, although thecoding rate of the individual transmissions will be one half accordingto the example puncturing table of FIG. 8, the rate of the code of thecombination of successive transmissions is one fourth because the twoinformation bits are transmitted and eight bits transmitted overall.

Thus, the exemplary puncturing table of FIG. 8 provides a beneficialincrease in redundancy when successive transmissions are combined. Thissecond embodiment is distinguishable from the Type II Hybrid ARQ atleast in that the method is adapted to a variable rate channel, andwhenever possible, data is transmitted along with the parity bits ineach retransmission. Specifically, the selection and transmission ofparity bits for turbo codes is considered in this embodiment and anexemplary puncturing code is provided for the turbo code.

FIG. 9 illustrates transmission rates of transmission and retransmissionof a data packet according to a third embodiment of the presentinvention. In this third embodiment the data transmission may be changedfor each of the retransmissions. Furthermore, the coding rate changes inan incremental fashion. In FIG. 9 the first transmission of atransmission block is shown, for example, having a coding rate of 1,i.e., no parity bits are transmitted. If the decoding of the firsttransmission A⁰ is not successful, the transmission block isretransmitted in a first retransmission A¹ (second transmission). Thesecond transmission coding rate is incrementally smaller than the firsttransmission, and is, for example, two thirds. As with prior embodimentsthe individual transmissions may be combined to increase the signal tonoise ratio, and the combination decoded.

Alternatively, or optionally, each individual transmission may bedecoded prior to combining transmissions. Thus, this invention has theflexibility of self decodable retransmissions. If the decodings of thetransmissions fail, the data is retransmitted in ever decreasing codingrates to progressively increase redundancy. FIG. 9 illustrates, forexample, that the first transmission through the fourth retransmission(first through fifth transmission), have respective decoding rates ofone, two thirds, one half, two fifths and one third, respectively. Thecoding rate is decreased through puncturing the output from an encoderprior to transmission.

In FIG. 9, the number of bits transmitted increases with decreases incoding rate, and thus the transmissions require an increasingly largernumber of slots to be transmitted. For example, FIG. 9 shows that thefirst through fifth transmission are transmitted respectively over 1,1.5, 2, 2.5, and 3 time slots.

FIG. 10 is a flow diagram further illustrating a method according to thethird embodiment of the present invention. The example illustrated inFIG. 10 uses, for example, 8-state PCCC turbo code to encode data blocksprior to transmission. The data blocks are input into a turbo encoderwhich outputs the data bits and parity bits according to the turbo code.For example, a turbo encoder such as the one shown in FIG. 7 may beused. The turbo encoder output is then punctured, and the coding rate isset according to the particular puncturing scheme employed. For example,the initial coding rate may be set to one, and all parity bits arepunctured.

The punctured output is sent in a transmission block in the firsttransmission A⁰ (step 1002). The receiver then soft estimates the bitsof the transmitted transmission block and feeds the soft estimates intoa decoder to decode the first transmission providing decoded data bitsin a first decoding (also at step 1002). The receiver then determines ifthe first decoding was successful (step 1004). If the first decoding wassuccessful no further transmission of the data packet is necessary.

However, if the first decoding is not successful, the first transmissionA⁰, including data bits and parity bits, if any, is stored, and thereceiver requests that the transmitter retransmit the data in a secondtransmission (first retransmission, step 1006). The transmitter uponreceiving the request to retransmit the data, transmits a transmissionblock in the second transmission A¹. The second transmission istransmitted at a lower coding rate than the first transmission therebyincreasing redundancy. In this second transmission the coding rate isreduced to two thirds, for example. Of course, the coding rate in thesecond transmission need not be two thirds, but is lower than the codingrate in the first transmission to increase redundancy. Increasing thenumber of parity bits that are transmitted decreases the coding rate.This increased number of parity bits transmitted increases theredundancy and thus improves the codes' error correction capability.

The second transmission A₁ is then decoded in a second decoding (also atstep 1006) and the receiver determines whether the decoding wassuccessful (step 1008). If the receiver determines that the seconddecoding, and thus the second transmission, is successful no furtherretransmissions are necessary. If the receiver determines that thesecond decoding is not successful, the second transmission A¹ iscombined with the stored first transmission A⁰ to form a first combinedtransmission, A⁰+A¹, preferably, by a soft combining method (step 1010).

The first combined transmission is then decoded (also at step 1010) andthe receiver determines if the decoding is successful (step 1012). Ifdecoding is successful, no further retransmissions are necessary.Alternatively, the first combined transmission may be decoded prior tothe second transmission, and the success of this decoding is thendetermined. If both decodings arc not successful, the secondtransmission, including data bits and parity bits is stored, and thereceiver requests that the transmitter retransmit the data in a thirdtransmission (second retransmission, at step 1014).

The transmitter upon receiving the request to retransmit the data,transmits a transmission block in the third transmission (secondretransmission) A². The third transmission is transmitted at a yet lowercoding rate than the second transmission, again increasing theredundancy. For example, if the coding rate of the second transmissionis two thirds, the coding rate of the third transmission may be reducedto one half.

The third transmission A² is then decoded (also at step 1014) and thereceiver determines whether the decoding is successful (step 1016). Ifthe receiver determines that this decoding is successful, no furtherretransmissions are necessary. If the receiver determines that thisdecoding is not successful, the third transmission A² may be combinedwith both the stored first transmission A⁰ and second transmission A¹ toform a second combined transmission, A⁰+A¹+A² (step 1018). Thiscombination, A⁰+A¹+A², is generated, preferably, by a soft combiningmethod. The second combined transmission is then decoded (also at step1018), and the receiver determines if the decoding is successful (atstep 1020). If successful, no further retransmissions are necessary.Alternatively, the second combined transmission may be decoded prior tothe third transmission, and the success of this decoding is thendetermined.

If both decodings are not successful, the third transmission, includingdata bits and parity bits is stored, and the receiver requests that thetransmitter retransmit the data in a fourth transmission (thirdretransmission, at step 1022). The transmitter upon receiving therequest to retransmit the data, transmits a transmission block in thefourth transmission (third retransmission, also at step 1022) A³. Thefourth transmission is transmitted at a yet lower coding rate than thethird transmission. For example, if the coding rate of the thirdtransmission is one half, the coding rate of the fourth transmission maybe reduced to two fifths.

The fourth transmission A³ is then decoded (also at step 1022). Thereceiver then decodes the transmission (step 1024). If the receiverdetermines that this decoding, and thus the fourth transmission, issuccessful no further retransmissions arc necessary. If the receiverdetermines that this decoding is not successful, the fourth transmissionA³ may be combined with one or more of the earlier stored transmissionsA⁰+A¹+A², to form a third combined transmission.

The third combined transmission is then decoded, and the receiverdetermines if the decoding is successful. If successful, no furtherretransmissions are necessary. If both the decoding of A³ and of thethird combination transmission are not successful, the fourthtransmission, including data bits and parity bits is stored, and thereceiver requests that the transmitter retransmit the data in a furthertransmission, and the process continues accordingly (at step 1026) untila successful decode is made or until the transmission is abandoned.

FIG. 11 is a puncturing table that illustrates an exemplary puncturingprocedure for use in the third embodiment of this invention. In thepuncturing table of FIG. 11, X refers to the data bits output from theturbo encoder of FIG. 7, while Y₀, Y₁, Y₀′, and Y₁′ refer to parity bitoutput of that encoder. The successive binary numbers listed in thetable represent the puncturing for successive bits output from theencoder, where 1 indicates no puncturing and 0 indicates puncturing. Forexample, the successive binary numbers 1, 1, 1, 1 in the row labeled Xindicate no puncturing for four successive data bits output from theencoder.

As can be seen from the table of FIG. 11, the data bits are notpunctured. In other words, all of the data bits output from the encoderare transmitted in each of the transmissions. However, as also can beseen, many of the parity bits are punctured. For example, in the firsttransmission all of the parity bits have 0, 0, 0, 0 puncturingindicating that all of the parity bits are punctured and none aretransmitted.

In the second transmission (first retransmission), the 0, 0, 1, 0 forthe parity bits Y₁ and Y₁′ indicates that the third out of every four ofthese parity bits is punctured. In this second transmission the 0, 0, 0,0 for the parity bits Y₀ and Y₀′ indicates that all of these parity bitsare punctured. The puncture table of FIG. 11 also illustrates the codingrate for the first transmission and the subsequent retransmissions. Forexample, for the first transmission, for every four unpunctured databits, the number of unpunctured parity pits is zero, and the coding ratewill be one. However, for the first retransmission there are twounpunctured parity bits for every four unpunctured data bits and thecoding rate is thus two thirds.

The puncturing table of FIG. 11 illustrates that the coding rate of thetransmissions incrementally decreases from an initial coding rate of 1(no redundancy) to a coding rate of one third. Of course the codingrates illustrated are merely exemplary and other incrementallydecreasing coding rates may be used.

This third embodiment is distinguishable from the Type III Hybrid ARQ atleast in the punctured turbo codes used for forward error correction,the code rate is progressively decreased to that of the mother code, andthe extension to a variable rate channel. In the latter, if theretransmission rate is lower than the prior transmission, then none,some, or all of the data bits may be included based on theretransmission rate available.

The first three embodiments may also be combined. For example, theexample of the second embodiment described above describes alternateparity bit transmission for successive transmissions at a fixed datatransmission rate and coding rate for the individual transmissions,while the example of the third embodiment described above describes anincremental decrease in the coding rate of individual transmissions.These embodiments could be combined to provide alternate parity bittransmission and an incremental decrease in the coding rate ofindividual transmissions. Further generalizations combining the datatransmission rate and the coding rate are also possible. In the eventthat the data can be transmitted over a smaller number of slots withthis combination, the remaining slots may be used to transmit newinformation.

A further embodiment of this invention generalizes the methods proposedabove to deliver adaptive coding through employing both the variabledata rate option mentioned in the first embodiment above and thevariable coding rate option mentioned in the subsequent embodiments togenerate an arbitrary rate code. An extension of this embodiment willyield significant efficiency in that an increased transmission data ratedue to improved channel conditions will allow a variety of options,e.g., introduction of further redundancy by repetition, or multiplexingof the retransmission data with new data to the user(s).

FIG. 12 is a block diagram illustrating a base station 1202 constructedaccording to the present invention that performs the operationspreviously described herein. The base station 1202 supports a CDMAoperating protocol, e.g., IS-95A, IS-95B, IS-2000, and/or various 3G and4G standards. However, in other embodiments, the base station 1202supports other operating standards.

The base station 1202 includes a processor 1204, dynamic RAM 1206,static RAM 1208, Flash memory, EPROM 1210 and at least one data storagedevice 1212, such as a hard drive, optical drive, tape drive, etc. Thesecomponents (which may be contained on a peripheral processing card ormodule) intercouple via a local bus 1217 and couple to a peripheral bus1220 (which may be a back plane) via an interface 1218. Variousperipheral cards couple to the peripheral bus 1220. These peripheralcards include a network infrastructure interface card 1224, whichcouples the base station 1202 to the wireless network infrastructure1250. Digital processing cards 1226, 1228, and 1230 couple to RadioFrequency (RF) units 1232, 1234, and 1236, respectively. The RF units1232, 1234, and 1236 couple to antennas 1242, 1244, and 1246,respectively, and support wireless communication between the basestation 1202 and user terminals (shown in FIG. 13). The base station1202 may include other cards 1240 as well.

Automatic Retransmission Request Software Instructions (ARQI) 1216 arcstored in storage 1212. The ARQI 1216 are downloaded to the processor1204 and/or the DRAM 1206 as ARQI 1214 for execution by the processor1204. While the ARQI 1216 are shown to reside within storage 1212contained in base station 1202, the ARQI 1216 may be loaded ontoportable media such as magnetic media, optical media, or electronicmedia. Further, the ARQI 1216 may be electronically transmitted from onecomputer to another across a data communication path. These embodimentsof the ARQI are all within the spirit and scope of the presentinvention. Upon execution of the ARQI 1214, the base station 1202performs operations according to the present invention previouslydescribed herein.

The ARQI 1216 may also be partially executed by the digital processingcards 1226, 1228, and 1230 and/or other components of the base station1202. Further, the structure of the base station 1202 illustrated isonly one of many varied base station structures that could be operatedaccording to the teachings of the present invention.

FIG. 13 is a block diagram illustrating a user terminal 1302 constructedaccording to the present invention that performs the operationspreviously described herein. The user terminal 1302 supports a CDMAoperating protocol, e.g., TS-95A, IS-95B, TS-2000, and/or various 3G and4G standards. However, in other embodiments, the user terminal 1302supports other operating standards.

The user terminal 1302 includes an RF unit 1304, a processor 1306, and amemory 1308. The RF unit 1304 couples to an antenna 1305 that may belocated internal or external to the case of the user terminal 1302. Theprocessor 1306 may be an Application Specific Integrated Circuit (ASIC)or another type of processor that is capable of operating the userterminal 1302 according to the present invention. The memory 1308includes both static and dynamic components, e.g., DRAM, SRAM, ROM,EEPROM, etc. In some embodiments, the memory 1308 may be partially orfully contained upon an ASIC that also includes the processor 1306. Auser interface 1310 includes a display, a keyboard, a speaker, amicrophone, and a data interface, and may include other user interfacecomponents. The RF unit 1304, the processor 1306, the memory 1308, andthe user interface 1310 couple via one or more communicationbuses/links. A battery 1312 also couples to and powers the RF unit 1304,the processor 1306, the memory 1308, and the user interface 1310.

Automatic Retransmission Request Software Instructions (ARQI) 1316 arestored in memory 1308. The ARQI 1316 are downloaded to the processor1306 as ARQI 1314 for execution by the processor 1306. The ARQI 1316 maybe programmed into the user terminal 1302 at the time of manufacture,during a service provisioning operation, such as an over-the-air serviceprovisioning operation, or during a parameter updating operation.

Upon execution of the ARQI 1314, the user terminal 1302 performsoperations according to the present invention previously describedherein. The ARQI may also be partially executed by the RF unit 1304 insome embodiments. The structure of the user terminal 1302 illustrated isonly an example of one user terminal structure. Many other varied userterminal structures could be operated according to the teachings of thepresent invention.

In the embodiments described herein, the base station 1202 serves as thetransmitter while the user terminal 1302 serves as the receiver.However, the principles of the present invention may easily be appliedsuch that the user terminal 1302 serves as the transmitter and the basestation 1202 serves as the receiver.

In the embodiments described herein, partial or full soft combining maybe performed at the receiver, depending on whether some of the data bitswere retransmitted or all of the data bits were retransmitted due to thevariable rate channel. Because this invention provides advantages fortransmission over a variable rate channel, it provides particularadvantages for applications where at any given instant, the channel isnot shared, but dedicated to a particular user.

The foregoing description of a preferred embodiment of the invention hasbeen presented for purposes of illustration and description. It is notintended to be exhaustive or to limit the invention to the precise formdisclosed, and modifications and variations are possible in light of theabove teachings or may be acquired from practice of the invention. Theembodiment was chosen and described in order to explain the principlesof the invention and its practical application to enable one skilled inthe art to utilize the invention in various embodiments and with variousmodifications as are suited to the particular use contemplated. It isintended that the scope of the invention be defined by the claimsappended hereto, and their equivalents.

The invention claimed is:
 1. A non-transitory, computer accessiblestorage medium storing program instructions for performing wirelesstransmission, wherein the program instructions are executable to: encodea plurality of data bits of the data packet to produce a plurality ofparity bits, wherein the plurality of data bits and the plurality ofparity bits comprise an encoder packet; form a first sub packet from theencoder packet as a first transmission, the first sub packet includingthe data bits and a first set of the parity bits and the first subpacket having a first coding rate; transmit the first transmission to areceiver at a first bit rate; receive a first indication from thereceiver that the data packet was not successfully received; form asecond sub packet from the encoder packet as a second transmission, thesecond sub packet including the data bits and a second set of paritybits that are different from the first set of parity bits and the secondsub packet having a second coding rate that differs from the firstcoding rate; and transmit the second transmission to the receiver at asecond bit rate.
 2. The non-transitory, computer accessible storagemedium of claim 1, wherein the second bit rate differs from the firstbit rate.
 3. The non-transitory, computer accessible storage medium ofclaim 1, wherein the first bit rate and the second bit rate are the samebit rate.
 4. The non-transitory, computer accessible storage medium ofclaim 1, wherein the second coding rate is less than the first codingrate.
 5. A user terminal, comprising: one or more antennas forperforming wireless communication; logic coupled to the one or moreantennas, wherein the logic is configured to: encode a plurality of databits of the data packet to produce a plurality of parity bits, whereinthe plurality of data bits and the plurality of parity bits comprise anencoder packet; form a first sub packet from the encoder packet as afirst transmission, the first sub packet including the data bits and afirst set of the parity bits and the first sub packet having a firstcoding rate; transmit the first transmission to a receiver at a firstbit rate using the one or more antennas; receive a first indication fromthe receiver using the one or more antennas, wherein the firstindication indicates that the data packet was not successfully received;form a second sub packet from the encoder packet as a secondtransmission, the second sub packet including the data bits and a secondset of parity bits that are different from the first set of parity bitsand the second sub packet having a second coding rate that differs fromthe first coding rate; and transmit the second transmission to thereceiver at a second bit rate using the one or more antennas.
 6. Theuser terminal of claim 5, wherein the logic comprises a memory mediumstoring program instructions and a processor to execute the programinstructions.
 7. The user terminal of claim 5, wherein the logiccomprises an application specific integrated circuit (ASIC).
 8. The userterminal of claim 5, wherein the user terminal comprises a cellularphone.
 9. The user terminal of claim 5, wherein the second bit ratediffers from the first bit rate.
 10. The user terminal of claim 5,wherein the first bit rate and the second bit rate are the same bitrate.
 11. The user terminal of claim 5, wherein the second coding rateis less than the first coding rate.
 12. A method for performing wirelessreception, comprising: receiving a first transmission from a transmitterat a first bit rate, wherein the first transmission comprises a firstsub packet of an encoder packet, wherein the encoder packet comprises aplurality of data bits and a plurality of parity bits, wherein the firstsub packet comprises the plurality of data bits and a first set of theplurality of parity bits, and wherein the first sub packet has a firstcoding rate; determining that the first transmission was notsuccessfully received; transmitting an indication to the transmitterthat the data packet was not successfully received; receiving a secondtransmission from the transmitter at a second bit rate in response tothe indication, wherein the second transmission comprises a second subpacket of the encoder packet, wherein the second sub packet has a secondcoding rate that differs from the first coding rate, and wherein thesecond sub packet comprises the plurality of data bits and a second setof the plurality of parity bits that are different from the first set ofthe plurality of parity bits.
 13. The method of claim 12, furthercomprising: using the first and second transmission to determine theplurality of data bits.
 14. The method of claim 12, further comprising:combining the first and second transmission to determine the pluralityof data bits.
 15. The method of claim 12, wherein said determining thatthe first transmission was not successfully received comprises: decodingthe first transmission; and determining that said decoding wasunsuccessful.
 16. The method of claim 12, further comprising:determining that the first transmission was not successfully received;transmitting a second indication to the transmitter that the data packetwas not successfully received; receiving a third transmission from thetransmitter at a third bit rate in response to the second indication,wherein the third transmission comprises a third sub packet of theencoder packet, wherein the third sub packet has a third coding ratethat differs from at least one of the first and second coding rate, andwherein the second sub packet comprises the plurality of data bits and athird set of the plurality of parity bits that are different from atleast one of the first set of the plurality of parity bits and thesecond set of the plurality of parity bits.
 17. The method of claim 12,wherein the second bit rate differs from the first bit rate.
 18. Themethod of claim 12, wherein the first bit rate and the second bit rateare the same bit rate.
 19. The method of claim 12, wherein the secondcoding rate is less than the first coding rate.
 20. A non-transitory,computer accessible storage medium storing program instructions forperforming wireless reception, wherein the program instructions areexecutable to: receive a first transmission from a transmitter at afirst bit rate, wherein the first transmission comprises a first subpacket of an encoder packet, wherein the encoder packet comprises aplurality of data bits and a plurality of parity bits, wherein the firstsub packet comprises the plurality of data bits and a first set of theplurality of parity bits, and wherein the first sub packet has a firstcoding rate; determine that the first transmission was not successfullyreceived; transmit an indication to the transmitter that the data packetwas not successfully received; receive a second transmission from thetransmitter at a second bit rate in response to the indication, whereinthe second transmission comprises a second sub packet of the encoderpacket, wherein the second sub packet has a second coding rate thatdiffers from the first coding rate, and wherein the second sub packetcomprises the plurality of data bits and a second set of the pluralityof parity bits that are different from the first set of the plurality ofparity bits.
 21. The non-transitory, computer accessible storage mediumof claim 20, wherein the program instructions are further executable to:use the first and second transmission to determine the plurality of databits.
 22. The non-transitory, computer accessible storage medium ofclaim 20, wherein the program instructions are further executable to:combine the first and second transmission to determine the plurality ofdata bits.
 23. The non-transitory, computer accessible storage medium ofclaim 20, wherein said determining that the first transmission was notsuccessfully received comprises: decoding the first transmission; anddetermining that said decoding was unsuccessful.
 24. The non-transitory,computer accessible storage medium of claim 20, wherein the programinstructions are further executable to: determine that the firsttransmission was not successfully received; transmit a second indicationto the transmitter that the data packet was not successfully received;receive a third transmission from the transmitter at a third bit rate inresponse to the second indication, wherein the third transmissioncomprises a third sub packet of the encoder packet, wherein the thirdsub packet has a third coding rate that differs from at least one of thefirst and second coding rate, and wherein the second sub packetcomprises the plurality of data bits and a third set of the plurality ofparity bits that are different from at least one of the first set of theplurality of parity bits and the second set of the plurality of paritybits.
 25. The non-transitory, computer accessible storage medium ofclaim 20, wherein the second bit rate differs from the first bit rate.26. The non-transitory, computer accessible storage medium of claim 20,wherein the first bit rate and the second bit rate are the same bitrate.
 27. The non-transitory, computer accessible storage medium ofclaim 20, wherein the second coding rate is less than the first codingrate.
 28. A user terminal, comprising: one or more antennas forperforming wireless communication; logic coupled to the one or moreantennas, wherein the logic is configured to: receive a firsttransmission from a transmitter at a first bit rate using the one ormore antennas, wherein the first transmission comprises a first subpacket of an encoder packet, wherein the encoder packet comprises aplurality of data bits and a plurality of parity bits, wherein the firstsub packet comprises the plurality of data bits and a first set of theplurality of parity bits, and wherein the first sub packet has a firstcoding rate; determine that the first transmission was not successfullyreceived; transmit an indication to the transmitter using the one ormore antennas, wherein the indication indicates that the data packet wasnot successfully received; receive a second transmission from thetransmitter at a second bit rate using the one or more antennas inresponse to the indication, wherein the second transmission comprises asecond sub packet of the encoder packet, wherein the second sub packethas a second coding rate that differs from the first coding rate, andwherein the second sub packet comprises the plurality of data bits and asecond set of the plurality of parity bits that are different from thefirst set of the plurality of parity bits.
 29. The user terminal ofclaim 28, wherein the logic comprises a memory medium storing programinstructions and a processor to execute the program instructions. 30.The user terminal of claim 28, wherein the logic comprises anapplication specific integrated circuit (ASIC).
 31. The user terminal ofclaim 28, wherein the user terminal comprises a cellular phone.
 32. Theuser terminal of claim 28, wherein the logic is further configured to:use the first and second transmission to determine the plurality of databits.
 33. The user terminal of claim 28, wherein the logic is furtherconfigured to: combine the first and second transmission to determinethe plurality of data bits.
 34. The user terminal of claim 28, whereinsaid determining that the first transmission was not successfullyreceived comprises: decoding the first transmission; and determiningthat said decoding was unsuccessful.
 35. The user terminal of claim 33,wherein the logic is further configured to: determine that the firsttransmission was not successfully received; transmit a second indicationto the transmitter that the data packet was not successfully received;receive a third transmission from the transmitter at a third bit rate inresponse to the second indication, wherein the third transmissioncomprises a third sub packet of the encoder packet, wherein the thirdsub packet has a third coding rate that differs from at least one of thefirst and second coding rate, and wherein the second sub packetcomprises the plurality of data bits and a third set of the plurality ofparity bits that are different from at least one of the first set of theplurality of parity bits and the second set of the plurality of paritybits.
 36. The user terminal of claim 28, wherein the second bit ratediffers from the first bit rate.
 37. The user terminal of claim 28,wherein the first bit rate and the second bit rate are the same bitrate.
 38. The user terminal of claim 28, wherein the second coding rateis less than the first coding rate.